/*
 * @Author: your name
 * @Date: 2021-03-08 16:45:20
 * @LastEditTime: 2021-04-01 11:38:36
 * @LastEditors: lily
 * @Description: In User Settings Edit
 * @FilePath: \testcodeg:\work\leetcode\code\495.提莫攻击.js
 */
/*
 * @lc app=leetcode.cn id=495 lang=javascript
 *
 * [495] 提莫攻击
 */

// @lc code=start
/**
 * @param {number[]} timeSeries
 * @param {number} duration
 * @return {number}
 */

//  思路：
//  由于毒效不重复，可以分两种情况：攻击在毒效内，或者在毒效之后
//  如果毒效较长，gap 内都起效——则累加 gap。
//  如果毒效较短，在 gap 内结束了——则累加 duration。

//  复杂度： O(n)  O(1)

var findPoisonedDuration = function (timeSeries, duration) {
    time = 0
    if (timeSeries.length > 0) {
        time = duration
        for (var i = 1; i < timeSeries.length; i++) {
            var gap = timeSeries[i] - timeSeries[i - 1]
            var addtime = gap < duration ? gap : duration
            time += addtime
        }
    }
    return time
};
// @lc code=end

